/*
 * Picture2D.h
 *
 *  Created on: 18.2.2013
 *      Author: Travis
 */

#pragma once

#include "../ShaderPool.h"
#include <glm/glm.hpp>
#include <string>
#include "GL/gl.h"
#include "../scene/World.h"
#include "../textures/Textures.h"

namespace Gadgets
{

class Picture2D
{
public:
	Picture2D(int _width, int _height, std::string _file);
	virtual ~Picture2D();

	void draw(glm::vec2 Pos);
	void draw(glm::vec2 Pos, int addsize);

	const std::string& getFile() const;
	void setFile(const std::string& file);
	int getHeight() const;
	void setHeight(int height);
	const std::string& getPath() const;
	void setPath(const std::string& path);
	int getWidth() const;
	void setWidth(int width);
	bool isVisible() const;
	void setVisible(bool visible);

private:
	int width, height;
	GLuint texture, shaderID;

	std::string path;
	std::string file;

	bool visible;
};

} /* namespace Gadgets */
